This specification relates to programs executed in conjunction with media content generation.
The Internet is widely used to distribute media content, including video, graphic, audio, and scripting data. Media content can be downloaded as a file, or streamed to a client computer, where a media player application can process and output the media content to a display device and, if applicable, one or more speakers. The media player application or an application including media player functionality, in some examples, can be a program written for a particular operating system (OS) on a computer platform or a “plug-in” based software that runs inside another program, such as a runtime environment, on a computer platform.
Digital content can be shared directly between two devices, without an intervening central relay server, using a peer-to-peer (P2P) communication architecture where a participant provides a portion of resources (e.g., processor, memory, network bandwidth) to one or more additional participants. Peers generally create a sharing relationship, with each peer being both a consumer and a supplier of resources (e.g., digital content).
The rate at which media content is presented upon a user device can depend upon a number of factors, including the bandwidth and speed of the network connection, the processor speed of the receiving device, the processor load on the receiving device, and network congestion. If the processor is too slow, or the processor has too many applications vying for processing time at once, the frame rate of particular media content rendered upon the user device can slow to a frame rate which is too slow for the user to properly experience. For example, the media content can appear to be stalled or choppy.
Video quality or audio quality can be manually adjusted by a user to improve media presentation during network congestion or processor overload. For example, a user can reduce the video bit rate or video complexity (e.g., pixel density) through manual adjustment. Audio quality can be similarly adjusted by reducing the sampling rate or the quality level.